package javachongkao.春面向对象1;

import java.util.Scanner;
//7-1 jmu-Java-03面向对象基础-01-构造方法与toString
//定义一个有关人的Person类，内含属性：
//String name、int age、boolean gender、int id，所有的变量必须为私有(private)。
//注意：属性顺序请严格按照上述顺序依次出现。
//
//1.编写无参构造函数：
//打印"This is constructor"。
//将name,age,gender,id按照name,age,gender,id格式输出
//2.编写有参构造函数
//依次对name,age,gender赋值。
//
//3.覆盖toString函数：
//按照格式：类名 [name=, age=, gender=, id=]输出。建议使用Eclipse自动生成.
//
//4.对每个属性生成setter/getter方法
//5.main方法中
//首先从屏幕读取n，代表要创建的对象个数。
//然后输入n行name age gender , 调用上面2编写的有参构造函数新建对象。
//然后将刚才创建的所有对象逆序输出。
//接下来使用无参构造函数新建一个Person对象，并直接打印该对象。
public class Person {
    private String name;
    private int age;
    private boolean gender;
    private int id;
    public Person() {
        System.out.println("This is constructor");
        System.out.println(name + "," + age + "," + gender + "," + id);
    }
    public Person(String name, int age, boolean gender) {
        this.name = name;
        this.age = age;
        this.gender = gender;
    }
    @Override
    public String toString() {
        return "Person [name=" + name + ", age=" + age + ", gender=" + gender + ", id=" + id + "]";
    }
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public int getAge() {
        return age;
    }

    public void setAge(int age) {
        this.age = age;
    }

    public boolean isGender() {
        return gender;
    }

    public void setGender(boolean gender) {
        this.gender = gender;
    }

    public int getId() {
        return id;
    }

    public void setId(int id) {
        this.id = id;
    }

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int n = scanner.nextInt();
        Person[] persons = new Person[n];
        for (int i = 0; i < n; i++) {
            String name = scanner.next();
            int age = scanner.nextInt();
            boolean gender = scanner.nextBoolean();
            persons[i] = new Person(name, age, gender);
        }
        for (int i = n - 1; i >= 0; i--) {
            System.out.println(persons[i].toString());
        }
        Person p = new Person();
        System.out.println(p.toString());

        scanner.close();
    }
}
